Merhaba,
1. Datayı HTTP işlemleri ile çekecekseniz eğer AFNetwork Framework'ünü tercih edebilirsiniz, Geleceği Yazanlar'ın iOS 401 eğitimleri sayfasında da konusu mevcut zaten;
https://gelecegiyazanlar.turkcell.com.tr/konu/ios/egitim/ios-401/http-islemleri-icin-afnetwork
2. XML Parse işlemi için NSXMLParser sınıfını kullanabilirsiniz;
NSXMLParser sınıfından data ile birlikte bir adet instance türetip, delegate' ini belirledikten sonra parse işlemini başlatıyoruz.
[code]
NSXMLParser *parser = [[NSXMLParser alloc]initWithData:dataName];
[parser setDelegate:self];
[parser parse];
[/code]
Daha sonra delegate metotları içerisinde parse işlemlerine başlayabilirsiniz.
[code]
//Parse işlemi başladığında
- (void)parserDidStartDocument:(NSXMLParser *)parser{
/* Codes */
}
//Gelen XML taglarına göre parçalama işlemi başladığında
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
//<item>string</item> şeklinde olduğunu varsayarsak;
if([elementName isEqualToString:@"item"]{
/* Codes */
}
}
//Gelen XML taglarının parçalama işlemi bittiğinde
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
/* Codes */
}
//Parse işleminde karakterler bulunduğunda bu metot tetikleniyor.
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
/* Codes */
}
[/code]
3. İnternet bağlantısı olmadan kullanmak içinde isterseniz bu gelen dataları bir dosyaya yazdırıp, veriye ihtiyacınız oldugunda bu dosyadan çekebilirsiniz veya Ahmet'in de dediği gibi local veritabanında tutarak oradan tekrar çekebilirsiniz.
Yine iOS 401 eğitimlerindeki Core Data konusunu da inceleyebilirsiniz;
https://gelecegiyazanlar.turkcell.com.tr/konu/ios/egitim/ios-401/core-data
İyi çalışmalar.